package top.yehot.kettle.boot.service;

import java.util.List;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;

import top.yehot.kettle.boot.models.entity.Task;
import top.yehot.kettle.boot.models.vo.task.TaskAddVO;
import top.yehot.kettle.boot.models.vo.task.TaskEditVO;
import top.yehot.kettle.boot.models.vo.task.TaskSearchVO;
import top.yehot.kettle.boot.models.vo.task.TaskVO;

/**
 * 任务 服务类
 * 
 * @author lquan
 * @date 2022年6月5日 上午9:26:37
 */
public interface TaskService extends IService<Task> {

	/**
	 * 任务列表（分页）
	 */
	public IPage<TaskVO> page(TaskSearchVO param);
	
	/**
	 * 任务新增
	 */
	public void add(TaskAddVO param);
	
	/**
	 * 根据ID查询任务信息
	 */
	public TaskEditVO findById(Integer id);
	
	/**
	 * 任务新增
	 */
	public void edit(TaskEditVO param);
	
	/**
	 * 任务删除
	 */
	public void delete(Integer id);
	
	/**
	 * 任务启动
	 */
	public void start(Integer id);
	
	/**
	 * 任务停止
	 */
	public void stop(Integer id);
	
	/**
	 * 解析cron
	 */
	public List<String> parseCron(String cron);
}
